HIV infected cells were identified by mapping transcriptome to HIV references (HXB2, Autologous, and Clade B) and ATAC-seq profiles to HIV references (HXB2, Autologous). A subset of reads were individually blasted to confirm they do map specifically to HIV, and then cells were annotated. A minimum of two reads was required to declare something HIV infected. See 20230626AnnotateHIV_2.R for exact processing.
results$HIV_type<-case_when(results$HIV_reads_ATAC>1 & results$HIV_reads_RNA>1 ~"HIV RNA+ and HIV DNA+",
results$HIV_reads_ATAC>1 ~ "HIV DNA+", results$HIV_reads_RNA>1 ~ "HIV RNA+",
T ~ "HIV not detected")
umapcords<-data.frame(results@reductions$umap@cell.embeddings)
umapcords$HIV<-results$HIV_type
BottleRocket2 = c("#FAD510", "#CB2314", "#273046", "#354823", "#1E1E1E")
colmap<-c("HIV not detected"="grey62", "HIV RNA+ and HIV DNA+"="#CB2314","HIV DNA+"="#354823","HIV RNA+" = "#FAD510")
ggplot(umapcords, aes(x=UMAP_1, y=UMAP_2, color="HIV not detected"))+geom_point()+
geom_point(data=umapcords[umapcords$HIV!="HIV not detected",], aes(x=UMAP_1, y=UMAP_2, color=HIV),size=2)+
scale_color_manual(values = colmap)+theme_classic()
pdf("~/gibbs/DOGMAMORPH/Ranalysis/Scripts/Figure Notebooks/rawFigs/fig2/A.pdf",width = 16, height = 9)
ggplot(umapcords, aes(x=UMAP_1, y=UMAP_2, color="HIV not detected"))+geom_point()+
geom_point(data=umapcords[umapcords$HIV!="HIV not detected",], aes(x=UMAP_1, y=UMAP_2, color=HIV),size=2)+
scale_color_manual(values = colmap)+theme_classic()
dev.off()
## png
## 2
meta<-results@meta.data
meta<-group_by(meta, HIV_type, merged_clusters, .drop=FALSE)%>%summarise(n=n())%>%mutate(freq=n/sum(n))
## `summarise()` has grouped output by 'HIV_type'. You can override using the
## `.groups` argument.
ggplot(meta, aes(x=merged_clusters, y=freq, fill=HIV_type), )+geom_bar(stat="identity", position=position_dodge(width = 1))+scale_fill_manual(values = colmap)+theme_classic()+xlab("Cluster")+ylab("proportion of cells")+theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.3))
pdf("~/gibbs/DOGMAMORPH/Ranalysis/Scripts/Figure Notebooks/rawFigs/fig2/B.pdf",width = 16, height = 9)
ggplot(meta, aes(x=merged_clusters, y=freq, fill=HIV_type), )+geom_bar(stat="identity", position=position_dodge(width = 1))+scale_fill_manual(values = colmap)+theme_classic()+xlab("Cluster")+ylab("proportion of cells")+theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.3))
dev.off()
## png
## 2
#have to simulate because its too resource intensive
#no difference in proportions for clusters across the three groups
fisher.test(cbind(meta$n[meta$HIV_type=="HIV not detected"],
meta$n[meta$HIV_type=="HIV RNA+ and HIV DNA+"],
meta$n[meta$HIV_type=="HIV DNA+"],
meta$n[meta$HIV_type=="HIV RNA+"]), simulate.p.value = TRUE, B = 1e6)
##
## Fisher's Exact Test for Count Data with simulated p-value (based on
## 1e+06 replicates)
##
## data: cbind(meta$n[meta$HIV_type == "HIV not detected"], meta$n[meta$HIV_type == "HIV RNA+ and HIV DNA+"], meta$n[meta$HIV_type == "HIV DNA+"], meta$n[meta$HIV_type == "HIV RNA+"])
## p-value = 0.1441
## alternative hypothesis: two.sided
# its very close with everything pooled but still not sig
fisher.test(rbind(meta$n[meta$HIV_type=="HIV not detected"],
colSums(rbind(meta$n[meta$HIV_type=="HIV RNA+ and HIV DNA+"],
meta$n[meta$HIV_type=="HIV DNA+"],
meta$n[meta$HIV_type=="HIV RNA+"]))), simulate.p.value = TRUE, B = 1e6)
##
## Fisher's Exact Test for Count Data with simulated p-value (based on
## 1e+06 replicates)
##
## data: rbind(meta$n[meta$HIV_type == "HIV not detected"], colSums(rbind(meta$n[meta$HIV_type == "HIV RNA+ and HIV DNA+"], meta$n[meta$HIV_type == "HIV DNA+"], meta$n[meta$HIV_type == "HIV RNA+"])))
## p-value = 0.05912
## alternative hypothesis: two.sided
HIV_counts<-rbind(meta$n[meta$HIV_type=="HIV not detected"],
colSums(rbind(meta$n[meta$HIV_type=="HIV RNA+ and HIV DNA+"],
meta$n[meta$HIV_type=="HIV DNA+"],
meta$n[meta$HIV_type=="HIV RNA+"])))
#not sig even if we drop clusters that dont have any HIV
fisher.test(HIV_counts[,HIV_counts[2,]!=0], simulate.p.value = TRUE, B = 1e6)
##
## Fisher's Exact Test for Count Data with simulated p-value (based on
## 1e+06 replicates)
##
## data: HIV_counts[, HIV_counts[2, ] != 0]
## p-value = 0.1462
## alternative hypothesis: two.sided
results$HIV_bool<-case_when(results$HIV_reads_ATAC>1 | results$HIV_reads_RNA>1 ~TRUE, T ~ FALSE)
results$HIV_bool<-factor(results$HIV_bool, levels = c(TRUE, FALSE))
Timepoint<-table(results$HIV_bool, results$Timepoint)
colnames(Timepoint)<-c("0 Months", "3 Months")
rownames(Timepoint)<-c("HIV_positive","HIV_negative")
to_plot<-data.frame(Timepoint/rowSums(Timepoint))
colnames(to_plot)<-c("HIV","Time","Prop")
colmap<-c("HIV_negative"="grey62", "HIV_positive"="#CB2314")
ggplot(to_plot, aes(x=Time, y=Prop, fill=HIV))+geom_bar(stat="identity", position=position_dodge(width = 1))+scale_fill_manual(values = colmap)+theme_classic()+xlab("Cluster")+ylab("proportion of cells")+theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.3))
pdf("~/gibbs/DOGMAMORPH/Ranalysis/Scripts/Figure Notebooks/rawFigs/fig2/C.pdf",width = 16, height = 9)
ggplot(to_plot, aes(x=Time, y=Prop, fill=HIV))+geom_bar(stat="identity", position=position_dodge(width = 1))+scale_fill_manual(values = colmap)+theme_classic()+xlab("Cluster")+ylab("proportion of cells")+theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.3))
dev.off()
## png
## 2
#no significant difference
chisq.test(Timepoint)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: Timepoint
## X-squared = 1.1475, df = 1, p-value = 0.2841
Treatment<-table(results$HIV_bool, results$Treatment)
rownames(Treatment)<-c("HIV_positive","HIV_negative")
to_plot<-data.frame(Treatment/rowSums(Treatment))
colnames(to_plot)<-c("HIV","Treatment","Prop")
colmap<-c("HIV_negative"="grey62", "HIV_positive"="#CB2314")
ggplot(to_plot, aes(x=Treatment, y=Prop, fill=HIV))+geom_bar(stat="identity", position=position_dodge(width = 1))+scale_fill_manual(values = colmap)+theme_classic()+xlab("Cluster")+ylab("proportion of cells")+theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.3))
pdf("~/gibbs/DOGMAMORPH/Ranalysis/Scripts/Figure Notebooks/rawFigs/fig2/D.pdf",width = 16, height = 9)
ggplot(to_plot, aes(x=Treatment, y=Prop, fill=HIV))+geom_bar(stat="identity", position=position_dodge(width = 1))+scale_fill_manual(values = colmap)+theme_classic()+xlab("Cluster")+ylab("proportion of cells")+theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.3))
dev.off()
## png
## 2
#significantly different across all
chisq.test(Treatment)
##
## Pearson's Chi-squared test
##
## data: Treatment
## X-squared = 6.6932, df = 2, p-value = 0.0352
#narrowed down to just Naltrexone
chisq.test(table(results$Treatment=="Naltrexone", results$HIV_bool))
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: table(results$Treatment == "Naltrexone", results$HIV_bool)
## X-squared = 4.9462, df = 1, p-value = 0.02615
#subset to just within T cell annotations
DefaultAssay(results)<-"RNA"
results$keep<-!is.na(results$CD4anno)
results.sub<-subset(results, keep==TRUE)
Idents(results.sub)<-results.sub$HIV_reads_ATAC>1
marks_ATAC.sub<-FindMarkers(results.sub, TRUE, FALSE)
Idents(results.sub)<-results.sub$HIV_reads_RNA>1
marks_RNA.sub<-FindMarkers(results.sub, TRUE, FALSE)
Idents(results.sub)<-(results.sub$HIV_reads_RNA>1)|(results.sub$HIV_reads_ATAC>1)
marks_either.sub<-FindMarkers(results.sub, TRUE, FALSE)
DT::datatable(rownames=TRUE, filter="top", class='cell-border stripe', extensions = 'Buttons', options = list(dom = 'Bfrtip', buttons = c('copy', 'csv', 'excel', 'pdf', 'print')), data=marks_ATAC.sub, caption = htmltools::tags$caption( style = 'caption-side: top; text-align: center; color:black; font-size:200% ;','HIV DNA+ cells vs all T cells'))
DT::datatable(rownames=TRUE, filter="top", class='cell-border stripe', extensions = 'Buttons', options = list(dom = 'Bfrtip', buttons = c('copy', 'csv', 'excel', 'pdf', 'print')), data=marks_RNA.sub, caption = htmltools::tags$caption( style = 'caption-side: top; text-align: center; color:black; font-size:200% ;','HIV RNA+ cells vs all T cells'))
DT::datatable(rownames=TRUE, filter="top", class='cell-border stripe', extensions = 'Buttons', options = list(dom = 'Bfrtip', buttons = c('copy', 'csv', 'excel', 'pdf', 'print')), data=marks_either.sub, caption = htmltools::tags$caption( style = 'caption-side: top; text-align: center; color:black; font-size:200% ;','HIV DNA+ or HIV RNA+ cells vs all T cells'))
toPlot<-c("PTPN13","TAF5L", "ZNF195","TRAV8-2")
Idents(results.sub)<-factor(Idents(results.sub), levels = c("TRUE","FALSE"))
VlnPlot(results.sub, features = toPlot, pt.size = 0, ncol = 4)
pdf("~/gibbs/DOGMAMORPH/Ranalysis/Scripts/Figure Notebooks/rawFigs/fig2/E_H.pdf",width = 16, height = 9)
VlnPlot(results.sub, features = toPlot, pt.size = 0, ncol = 4)
dev.off()
## png
## 2
m_df_H<- msigdbr(species = "Homo sapiens", category = "H")
m_df_H<- rbind(msigdbr(species = "Homo sapiens", category = "C2"), m_df_H)
m_df_H<- rbind(msigdbr(species = "Homo sapiens", category = "C7"), m_df_H)
fgsea_sets<- m_df_H %>% split(x = .$gene_symbol, f = .$gs_name)
DefaultAssay(results)<-"RNA"
results.sub<-subset(results, keep==TRUE)
Idents(results.sub)<-(results.sub$HIV_reads_RNA>1)|(results.sub$HIV_reads_ATAC>1)
#had to use 0.1 to ensure that we filter genes expressed in a single HIV infected cell and no/few other cells, which have insane p values but are functionally uninformative. While in theory GSEA is robust to this, in this case its not going to be reliable.
marks<-FindMarkers(results.sub, TRUE, FALSE, logfc.threshold = -Inf, min.pct = 0.1, min.diff.pct = -Inf)
GSEAres<-GSEA(marks, genesets = fgsea_sets)
## Warning in fgseaMultilevel(pathways = pathways, stats = stats, minSize =
## minSize, : There were 18 pathways for which P-values were not calculated
## properly due to unbalanced (positive and negative) gene-level statistic values.
## For such pathways pval, padj, NES, log2err are set to NA. You can try to
## increase the value of the argument nPermSimple (for example set it nPermSimple
## = 10000)
## Warning in fgseaMultilevel(pathways = pathways, stats = stats, minSize =
## minSize, : For some of the pathways the P-values were likely overestimated. For
## such pathways log2err is set to NA.
GSEAres<-GSEATable(GSEAres, gmt = fgsea_sets, name = "HIVinfected" )
## [1] "start ranking"
## [1] "done ranking"
GSEAres<-subset(GSEAres,padj<0.05 & NES>0)
DT::datatable(rownames=TRUE, filter="top", class='cell-border stripe', extensions = 'Buttons', options = list(dom = 'Bfrtip', buttons = c('copy', 'csv', 'excel', 'pdf', 'print')), data=GSEAres, caption = htmltools::tags$caption( style = 'caption-side: top; text-align: center; color:black; font-size:200% ;','HIV DNA+ or HIV RNA+ cells vs all T cells'))
toplot<-c("GSE11057_NAIVE_VS_CENT_MEMORY_CD4_TCELL_DN","ZHENG_BOUND_BY_FOXP3","GSE11057_EFF_MEM_VS_CENT_MEM_CD4_TCELL_UP","GSE14699_DELETIONAL_TOLERANCE_VS_ACTIVATED_CD8_TCELL_UP")
for(i in toplot){
print(GSEAEnrichmentPlotComparison(PathwayName = i, GSEACompOut = GSEAres, returnplot = "BOTH"))
}
pdf("~/gibbs/DOGMAMORPH/Ranalysis/Scripts/Figure Notebooks/rawFigs/fig2/I_L.pdf",width = 16, height = 9)
for(i in toplot){
print(GSEAEnrichmentPlotComparison(PathwayName = i, GSEACompOut = GSEAres, returnplot = "BOTH"))
}
dev.off()
## png
## 2
devtools::session_info()
## Warning in system("timedatectl", intern = TRUE): running command 'timedatectl'
## had status 1
## - Session info ---------------------------------------------------------------
## setting value
## version R version 4.2.0 (2022-04-22)
## os Red Hat Enterprise Linux 8.8 (Ootpa)
## system x86_64, linux-gnu
## ui X11
## language (EN)
## collate C
## ctype C
## tz Etc/UTC
## date 2023-07-20
## pandoc 3.1.1 @ /usr/lib/rstudio-server/bin/quarto/bin/tools/ (via rmarkdown)
##
## - Packages -------------------------------------------------------------------
## package * version date (UTC) lib source
## abind 1.4-5 2016-07-21 [2] CRAN (R 4.2.0)
## babelgene 22.9 2022-09-29 [1] CRAN (R 4.2.0)
## backports 1.4.1 2021-12-13 [2] CRAN (R 4.2.0)
## beeswarm 0.4.0 2021-06-01 [2] CRAN (R 4.2.0)
## BiocGenerics 0.44.0 2022-11-01 [1] Bioconductor
## BiocParallel 1.32.6 2023-03-17 [1] Bioconductor
## Biostrings 2.66.0 2022-11-01 [1] Bioconductor
## bitops 1.0-7 2021-04-24 [2] CRAN (R 4.2.0)
## broom 1.0.4 2023-03-11 [1] CRAN (R 4.2.0)
## bslib 0.4.2 2022-12-16 [1] CRAN (R 4.2.0)
## cachem 1.0.8 2023-05-01 [1] CRAN (R 4.2.0)
## callr 3.7.3 2022-11-02 [1] CRAN (R 4.2.0)
## car 3.1-2 2023-03-30 [1] CRAN (R 4.2.0)
## carData 3.0-5 2022-01-06 [2] CRAN (R 4.2.0)
## cli 3.6.1 2023-03-23 [1] CRAN (R 4.2.0)
## cluster 2.1.4 2022-08-22 [2] CRAN (R 4.2.0)
## codetools 0.2-19 2023-02-01 [2] CRAN (R 4.2.0)
## colorspace 2.1-0 2023-01-23 [2] CRAN (R 4.2.0)
## cowplot 1.1.1 2020-12-30 [2] CRAN (R 4.2.0)
## crayon 1.5.2 2022-09-29 [2] CRAN (R 4.2.0)
## crosstalk 1.2.0 2021-11-04 [2] CRAN (R 4.2.0)
## data.table 1.14.8 2023-02-17 [2] CRAN (R 4.2.0)
## DBI 1.1.3 2022-06-18 [2] CRAN (R 4.2.0)
## deldir 1.0-6 2021-10-23 [2] CRAN (R 4.2.0)
## devtools 2.4.5 2022-10-11 [1] CRAN (R 4.2.0)
## digest 0.6.31 2022-12-11 [2] CRAN (R 4.2.0)
## dplyr * 1.1.2 2023-04-20 [1] CRAN (R 4.2.0)
## DT 0.28 2023-05-18 [1] CRAN (R 4.2.0)
## ellipsis 0.3.2 2021-04-29 [2] CRAN (R 4.2.0)
## evaluate 0.20 2023-01-17 [2] CRAN (R 4.2.0)
## fansi 1.0.4 2023-01-22 [2] CRAN (R 4.2.0)
## farver 2.1.1 2022-07-06 [2] CRAN (R 4.2.0)
## fastmap 1.1.1 2023-02-24 [1] CRAN (R 4.2.0)
## fastmatch 1.1-3 2021-07-23 [2] CRAN (R 4.2.0)
## fgsea * 1.24.0 2022-11-01 [1] Bioconductor
## fitdistrplus 1.1-8 2022-03-10 [2] CRAN (R 4.2.0)
## fs 1.6.1 2023-02-06 [2] CRAN (R 4.2.0)
## future 1.32.0 2023-03-07 [1] CRAN (R 4.2.0)
## future.apply 1.10.0 2022-11-05 [1] CRAN (R 4.2.0)
## generics 0.1.3 2022-07-05 [2] CRAN (R 4.2.0)
## GenomeInfoDb 1.34.9 2023-02-02 [1] Bioconductor
## GenomeInfoDbData 1.2.9 2023-03-17 [1] Bioconductor
## GenomicRanges 1.50.2 2022-12-16 [1] Bioconductor
## ggbeeswarm 0.7.2 2023-04-29 [1] CRAN (R 4.2.0)
## ggplot2 * 3.4.2 2023-04-03 [1] CRAN (R 4.2.0)
## ggpubr * 0.6.0 2023-02-10 [1] CRAN (R 4.2.0)
## ggrastr 1.0.1 2021-12-08 [1] CRAN (R 4.2.0)
## ggrepel * 0.9.3 2023-02-03 [1] CRAN (R 4.2.0)
## ggridges 0.5.4 2022-09-26 [1] CRAN (R 4.2.0)
## ggsignif 0.6.4 2022-10-13 [1] CRAN (R 4.2.0)
## globals 0.16.2 2022-11-21 [1] CRAN (R 4.2.0)
## glue 1.6.2 2022-02-24 [2] CRAN (R 4.2.0)
## goftest 1.2-3 2021-10-07 [2] CRAN (R 4.2.0)
## gridExtra * 2.3 2017-09-09 [2] CRAN (R 4.2.0)
## gtable 0.3.3 2023-03-21 [1] CRAN (R 4.2.0)
## highr 0.10 2022-12-22 [1] CRAN (R 4.2.0)
## htmltools 0.5.5 2023-03-23 [1] CRAN (R 4.2.0)
## htmlwidgets 1.6.2 2023-03-17 [1] CRAN (R 4.2.0)
## httpuv 1.6.9 2023-02-14 [1] CRAN (R 4.2.0)
## httr 1.4.5 2023-02-24 [1] CRAN (R 4.2.0)
## ica 1.0-3 2022-07-08 [2] CRAN (R 4.2.0)
## igraph 1.4.2 2023-04-07 [1] CRAN (R 4.2.0)
## IRanges 2.32.0 2022-11-01 [1] Bioconductor
## irlba 2.3.5.1 2022-10-03 [1] CRAN (R 4.2.0)
## jquerylib 0.1.4 2021-04-26 [2] CRAN (R 4.2.0)
## jsonlite 1.8.4 2022-12-06 [2] CRAN (R 4.2.0)
## KernSmooth 2.23-20 2021-05-03 [2] CRAN (R 4.2.0)
## knitr 1.42 2023-01-25 [1] CRAN (R 4.2.0)
## labeling 0.4.2 2020-10-20 [2] CRAN (R 4.2.0)
## later 1.3.0 2021-08-18 [2] CRAN (R 4.2.0)
## lattice 0.21-8 2023-04-05 [1] CRAN (R 4.2.0)
## lazyeval 0.2.2 2019-03-15 [2] CRAN (R 4.2.0)
## leiden 0.4.3 2022-09-10 [1] CRAN (R 4.2.0)
## lifecycle 1.0.3 2022-10-07 [1] CRAN (R 4.2.0)
## limma 3.54.2 2023-02-28 [1] Bioconductor
## listenv 0.9.0 2022-12-16 [2] CRAN (R 4.2.0)
## lmtest 0.9-40 2022-03-21 [2] CRAN (R 4.2.0)
## magrittr 2.0.3 2022-03-30 [2] CRAN (R 4.2.0)
## MASS 7.3-59 2023-04-21 [1] CRAN (R 4.2.0)
## Matrix 1.5-4 2023-04-04 [1] CRAN (R 4.2.0)
## matrixStats 0.63.0 2022-11-18 [2] CRAN (R 4.2.0)
## memoise 2.0.1 2021-11-26 [2] CRAN (R 4.2.0)
## mime 0.12 2021-09-28 [2] CRAN (R 4.2.0)
## miniUI 0.1.1.1 2018-05-18 [2] CRAN (R 4.2.0)
## msigdbr * 7.5.1 2022-03-30 [1] CRAN (R 4.2.0)
## munsell 0.5.0 2018-06-12 [2] CRAN (R 4.2.0)
## nlme 3.1-162 2023-01-31 [1] CRAN (R 4.2.0)
## parallelly 1.35.0 2023-03-23 [1] CRAN (R 4.2.0)
## patchwork 1.1.2 2022-08-19 [1] CRAN (R 4.2.0)
## pbapply 1.7-0 2023-01-13 [1] CRAN (R 4.2.0)
## pillar 1.9.0 2023-03-22 [1] CRAN (R 4.2.0)
## pkgbuild 1.4.0 2022-11-27 [1] CRAN (R 4.2.0)
## pkgconfig 2.0.3 2019-09-22 [2] CRAN (R 4.2.0)
## pkgload 1.3.2 2022-11-16 [1] CRAN (R 4.2.0)
## plotly 4.10.1 2022-11-07 [1] CRAN (R 4.2.0)
## plyr 1.8.8 2022-11-11 [1] CRAN (R 4.2.0)
## png 0.1-8 2022-11-29 [1] CRAN (R 4.2.0)
## polyclip 1.10-4 2022-10-20 [1] CRAN (R 4.2.0)
## prettyunits 1.1.1 2020-01-24 [2] CRAN (R 4.2.0)
## processx 3.8.1 2023-04-18 [1] CRAN (R 4.2.0)
## profvis 0.3.8 2023-05-02 [1] CRAN (R 4.2.0)
## progressr 0.13.0 2023-01-10 [1] CRAN (R 4.2.0)
## promises 1.2.0.1 2021-02-11 [2] CRAN (R 4.2.0)
## ps 1.7.5 2023-04-18 [1] CRAN (R 4.2.0)
## purrr 1.0.1 2023-01-10 [1] CRAN (R 4.2.0)
## R6 2.5.1 2021-08-19 [2] CRAN (R 4.2.0)
## RANN 2.6.1 2019-01-08 [2] CRAN (R 4.2.0)
## RColorBrewer 1.1-3 2022-04-03 [2] CRAN (R 4.2.0)
## Rcpp 1.0.10 2023-01-22 [1] CRAN (R 4.2.0)
## RcppAnnoy 0.0.20 2022-10-27 [1] CRAN (R 4.2.0)
## RcppRoll 0.3.0 2018-06-05 [2] CRAN (R 4.2.0)
## RCurl 1.98-1.12 2023-03-27 [1] CRAN (R 4.2.0)
## remotes 2.4.2 2021-11-30 [2] CRAN (R 4.2.0)
## reshape2 * 1.4.4 2020-04-09 [2] CRAN (R 4.2.0)
## reticulate 1.28 2023-01-27 [1] CRAN (R 4.2.0)
## rlang 1.1.1 2023-04-28 [1] CRAN (R 4.2.0)
## rmarkdown 2.22 2023-06-01 [1] CRAN (R 4.2.0)
## ROCR 1.0-11 2020-05-02 [2] CRAN (R 4.2.0)
## Rsamtools 2.14.0 2022-11-01 [1] Bioconductor
## rstatix 0.7.2 2023-02-01 [1] CRAN (R 4.2.0)
## rstudioapi 0.14 2022-08-22 [1] CRAN (R 4.2.0)
## Rtsne 0.16 2022-04-17 [2] CRAN (R 4.2.0)
## S4Vectors 0.36.2 2023-02-26 [1] Bioconductor
## sass 0.4.5 2023-01-24 [1] CRAN (R 4.2.0)
## scales * 1.2.1 2022-08-20 [1] CRAN (R 4.2.0)
## scattermore 0.8 2022-02-14 [1] CRAN (R 4.2.0)
## sctransform 0.3.5 2022-09-21 [1] CRAN (R 4.2.0)
## sessioninfo 1.2.2 2021-12-06 [2] CRAN (R 4.2.0)
## Seurat * 4.3.0 2022-11-18 [1] CRAN (R 4.2.0)
## SeuratObject * 4.1.3 2022-11-07 [1] CRAN (R 4.2.0)
## shiny 1.7.4 2022-12-15 [1] CRAN (R 4.2.0)
## Signac * 1.9.0 2022-12-08 [1] CRAN (R 4.2.0)
## sp 1.6-0 2023-01-19 [1] CRAN (R 4.2.0)
## spatstat.data 3.0-1 2023-03-12 [1] CRAN (R 4.2.0)
## spatstat.explore 3.1-0 2023-03-14 [1] CRAN (R 4.2.0)
## spatstat.geom 3.1-0 2023-03-12 [1] CRAN (R 4.2.0)
## spatstat.random 3.1-4 2023-03-13 [1] CRAN (R 4.2.0)
## spatstat.sparse 3.0-1 2023-03-12 [1] CRAN (R 4.2.0)
## spatstat.utils 3.0-2 2023-03-11 [1] CRAN (R 4.2.0)
## stringi 1.7.12 2023-01-11 [1] CRAN (R 4.2.0)
## stringr 1.5.0 2022-12-02 [1] CRAN (R 4.2.0)
## survival 3.5-5 2023-03-12 [1] CRAN (R 4.2.0)
## tensor 1.5 2012-05-05 [2] CRAN (R 4.2.0)
## tibble * 3.2.1 2023-03-20 [1] CRAN (R 4.2.0)
## tidyr * 1.3.0 2023-01-24 [1] CRAN (R 4.2.0)
## tidyselect 1.2.0 2022-10-10 [1] CRAN (R 4.2.0)
## urlchecker 1.0.1 2021-11-30 [1] CRAN (R 4.2.0)
## usethis 2.1.6 2022-05-25 [1] CRAN (R 4.2.0)
## utf8 1.2.3 2023-01-31 [1] CRAN (R 4.2.0)
## uwot 0.1.14 2022-08-22 [1] CRAN (R 4.2.0)
## vctrs 0.6.2 2023-04-19 [1] CRAN (R 4.2.0)
## vipor 0.4.5 2017-03-22 [2] CRAN (R 4.2.0)
## viridisLite 0.4.2 2023-05-02 [1] CRAN (R 4.2.0)
## withr 2.5.0 2022-03-03 [2] CRAN (R 4.2.0)
## xfun 0.39 2023-04-20 [1] CRAN (R 4.2.0)
## xtable 1.8-4 2019-04-21 [2] CRAN (R 4.2.0)
## XVector 0.38.0 2022-11-01 [1] Bioconductor
## yaml 2.3.7 2023-01-23 [1] CRAN (R 4.2.0)
## zlibbioc 1.44.0 2022-11-01 [1] Bioconductor
## zoo 1.8-12 2023-04-13 [1] CRAN (R 4.2.0)
##
## [1] /gpfs/gibbs/project/ya-chi_ho/jac369/R/4.2
## [2] /vast/palmer/apps/avx2/software/R/4.2.0-foss-2020b/lib64/R/library
##
## ------------------------------------------------------------------------------